package it.polimi.traveldream.ejb;

import it.polimi.traveldream.ejb.management.EscursioneDTO;

import java.io.Serializable;

import javax.persistence.*;

import java.util.Date;
import java.util.List;


/**
 * The persistent class for the Escursione database table.
 * 
 */
@Entity
@NamedQueries({
	@NamedQuery(name="Escursione.findAll", query="SELECT e FROM Escursione e"),
	@NamedQuery(name="Escursione.findId", query="SELECT e FROM Escursione e WHERE e.idEscursione = ?1"),
	@NamedQuery(name="Escursione.updateDisp",query="UPDATE Escursione e SET e.postiRimanenti=e.postiRimanenti-1 WHERE e.idEscursione=?1"),
	@NamedQuery(name="Escursione.deleteById",query="DELETE FROM Escursione e WHERE e.idEscursione=?1 "),
	@NamedQuery(name="Escursione.filtrati",query="SELECT e FROM Escursione e WHERE e.citta=?1"),
})
public class Escursione implements Serializable {
	private static final long serialVersionUID = 1L;

	public static final String UPDDISP = "Escursione.updateDisp";
	
	public static final String FINDALL = "Escursione.findAll";
	
	public static final String FINDBYID = "Escursione.findId";
	
	public static final String DELETE="Escursione.deleteById";
	
	public static final String FILTR="Escursione.filtrati";

	
	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	private int idEscursione;

	@Temporal(TemporalType.DATE)
	private Date data;

	private String nome;

	private int postiRimanenti;

	private int prezzoSingolo;

	
	private String citta;



	public Escursione() {
	}

	public Escursione(EscursioneDTO escursione) {
		this.citta = escursione.getCitta();
		this.data = escursione.getInizio();
		this.nome = escursione.getNome();
		this.postiRimanenti = escursione.getPostiRimanenti();
		this.prezzoSingolo = escursione.getPrezzoSingolo();
	}

	public int getIdEscursione() {
		return this.idEscursione;
	}

	public void setIdEscursione(int idEscursione) {
		this.idEscursione = idEscursione;
	}

	public Date getData() {
		return this.data;
	}

	public void setData(Date inizio) {
		this.data = inizio;
	}

	public String getNome() {
		return this.nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public int getPostiRimanenti() {
		return this.postiRimanenti;
	}

	public void setPostiRimanenti(int postiRimanenti) {
		this.postiRimanenti = postiRimanenti;
	}

	public int getPrezzoSingolo() {
		return this.prezzoSingolo;
	}

	public void setPrezzoSingolo(int prezzoSingolo) {
		this.prezzoSingolo = prezzoSingolo;
	}

	public String getCittaBean() {
		return this.citta;
	}

	public void setCittaBean(String cittaBean) {
		this.citta = cittaBean;
	}



}